$(function() {
	var resoucesGrid = $("#resoucesGrid");
	var types = {
		MENU : "菜单",
		FUNCTION : "功能",
		BLOCK : "区域",
	};
	resoucesGrid.treegrid({
		url : 'resource/manager/list',
		border : false,
		animate : true,// 是否用动画效果

		collapsible : false,// 是否可折叠

		pagination : true,// 分页控件

		rownumbers : true,// 行号

		fit : true,
		fitColumns : true,// 自适应大小

		idField : 'resourceId',// 根据那个字段判断树节点关系

		treeField : 'resourceName',// 根据那个列展现树

		columns : [ [
				{
					title : '名称',
					field : 'resourceName',
					width : 180
				},
				{
					field : 'permissionKey',
					title : '标识',
					width : 100
				},
				{
					field : 'type',
					title : '类型',
					align : 'center',
					width : 80,
					formatter : function(val) {
						return types[val];
					}
				},
				{
					field : 'menuPath',
					title : '路径',
					width : 200
				},
				{
					field : 'resource',
					title : '资源',
					width : 200
				},
				{
					field : 'weight',
					title : '权重',
					align : 'center',
					width : 60
				},
				{
					field : 'description',
					title : '描述',
					width : 200
				},
				{
					field : 'enable',
					title : '状态',
					width : 80,
					align : 'center',
					formatter : function(val,rec) {
						return val ? "可用" : "禁用";
					}
				},
				{
					field : 'ac',
					title : '操作',
					width : 150,
					align : 'center',
					formatter : function(value, row, index) {
						var bts = [];
						bts.push('<a data-id="' + row.resourceId
								+ '" data-index="' + index
								+ '" class="ctr edit">编辑</a>');
						bts.push('<a data-id="' + row.resourceId
								+ '" data-index="' + index
								+ '" class="ctr delete">删除</a>');
						return bts.join('');
					}
				} ] ],
		toolbar : [ {
			iconCls : 'icon-add',
			id : 'add-resource',
			text : '添加权限',
			handler : function() {
				formDialog();
			}
		} ],
		onLoadSuccess : function() {
			$("#add-resource").parent().parent().css("height", "36");
			$("#add-resource").css("padding", "5");

		}
	});

	var gridPanel = resoucesGrid.treegrid("getPanel");

	// 给操作按钮绑定事件

	gridPanel.on("click", "a.edit", function() {
		var id = this.dataset.id;
		formDialog(id);
	}).on("click", "a.delete", function() {
		var id = this.dataset.id;
		$.messager.confirm("提示", "是否删除？", function(r) {
			if (r) {
				$.get("resource/manager/delete?id=" + id,null,function(rs){
					if(rs.success){
						resoucesGrid.treegrid("reload");
					}else{
						$.messager.alert("提示",rs.msg);
					}
				});
			}
		})
	});

	/**

	 * 表单窗口

	 */
	function formDialog(id) {
		var dialog = $("<div/>").dialog(
				{
					title : (id ? '编辑' : '添加') + '权限',
					href : 'resource/manager/'+ (id ? 'load?id=' + id : 'form'),
					width : 630,
					height : 450,
					onClose : function() {
						// 销毁窗口

						$(this).dialog("destroy");
					},
					buttons : [ {
						iconCls: 'icon-save',
						text : '保存',
						handler : function() {
							
							if($("#parent_").combotree("getValue")  === "请选择" || $("#parent_").combotree("getValue") == 0){
								$("#parent_").combotree("setValue",null);
							}
							var resourceForm = $("#resourceForm");
							if (resourceForm.form("validate")) {
								$.post("resource/manager/"+ (id ? 'update' : 'save'),resourceForm.serialize(),function(rs){
									if(rs.success){
										resoucesGrid.treegrid("reload");
										dialog.dialog('close');
									}else{
										$.messager.alert("提示",rs.msg);
									}
								});
							}
						}
					} ]
				});
	}
});